The present invention generally relates to graphical user interfaces, and more particularly, to systems and techniques which present relationships between representations of objects displayed as icons within a graphical user interface.
A typical computing system provides a graphical user interface (GUI) which allows users of the computing system to interact with the computing system and its associated software applications, filesystem(s), data, devices and/or peripherals. In many cases, a graphical user interface also provides a representation of remote computer systems and/or devices coupled to computer systems on a network via a graphical view of those remote computer systems and devices. The Windows series of operating systems (e.g., Windows 95, Windows 98, Windows NT, Windows 2000 and Windows CE, collectively referred to herein as Windows), manufactured by Microsoft Corporation of Redmond Wash., provide various application programs that include graphical user interfaces that operate in the manner discussed above. Windows 95, Windows 98, Windows NT, Windows 2000 and Windows CE are trademarks of Microsoft Corporation.
The Windows series of operating systems provide access to a computing system via a graphical representation of that computing system presented to the user on a display. Windows primarily allows a user of the computer system to navigate a file system contained within one or more storage devices (e.g., hard disks) associated with the computing system. A specific software application within Windows that provides such file system navigation capabilities via a graphical user interface is the Windows Explorer application program.
The graphical user interface within the Windows Explorer application can provide a graphical illustration of elements related to the computing system. In most cases, the application uses the graphical user interface to display elements graphically either as directory folder icons, which represent a list or directory of elements, or as icons that represent the specific elements within the folders. For example, if a user uses Explorer to view and graphically navigate a file system, Explorer presents a folder icon to the user via an output device (e.g., a computer display) for each directory or sub-directory on a disk. Explorer represents files within those directories by displaying file icons to the user on the output device that reflect the identity of the software application associated with (e.g., that created) that file. To navigate the file system using Explorer, the user simply clicks or double-clicks folder icons via a user input device such as a mouse that controls a pointer that is drawn upon the graphical user interface. In response to a user clicking a folder icon to xe2x80x9copenxe2x80x9d that folder, Explorer then redisplays the folder icon to appear as an xe2x80x9copenxe2x80x9d folder icon. Explorer also re-displays the graphical user interface to include any sub-folders icons or file icons that exist hierarchically below or xe2x80x9cwithinxe2x80x9d the open folder. The user may continue to navigate the file system by opening sub-folders in this manner, which causes Explorer to further open or xe2x80x9cexpandxe2x80x9d these sub-folders into other lists of sub-folder and/or file icons.
A user may also close an xe2x80x9cexpandedxe2x80x9d folder icon by clicking on an open folder icon. Closing an open folder in this manner causes Explorer to re-display the graphical user interface so that the graphical user interface no longer contains the sub-folder and file icons that appeared hierarchically below the formerly open folder. In other words, when a user closes an open folder icon, Explorer hides the icons (folders and/or files) that appear hierarchically below the open folder icon.
A user may elect to arrange a list of icons that Explorer displays according to certain pre-defined user selectable views. For example, the user may elect to have an application use a graphical user interface to present icons in a particular view, such as alphabetically, by creation date, by size, by author, and so forth. If a user elects to arrange a view of icons based on one of these attributes, Explorer consults information concerning each file or directory shown as an icon in the graphical user interface and then sorts the list of icons based on the user selected attribute. Then, Explorer displays the sorted list of icons according to the user selected attribute (e.g., size, date, etc.) within the graphical user interface. Explorer displays the sorted list of icons in a separate window for viewing by a user.
Software applications and computer systems that provide conventional graphical user interfaces are quite limited in their ability to represent multiple relationships between objects which those prior art interfaces represent as icons. For example, prior art graphical user interfaces such as Windows Explorer are limited to displaying icons (representing files and folders) that are arranged in a hierarchical format. This is because designers have developed Windows Explorer and other similar graphical user interface-based applications over many years to take into account the parentxe2x80x94child data relationships that exist between files and folders (directories) in a file system. The Explorer graphical user interface interface, for example, is highly adapted for displaying hierarchical file system data. If a group of data elements is arranged in a non-hierarchical format, a graphical user interface such as Windows Explorer cannot easily represent such data. For instance, if data elements are arranged many-to-many, an application using a hierarchical-based graphical user interface will have difficulty trying to graphically represent such relationships. This limitation causes an application using a prior art graphical user interface to only be able to represent a limited number of relationships within the graphical user interface at one point in time.
For example, a user may be able to view a prior art graphical user interface to determine what elements are hierarchically related above and below a specific element, but the user may have difficulty determining other relationships concerning a specific element by viewing the same part of the graphical user interface at the same time. As an example related to a file stored in a file system on a disk, using only one view of a prior art graphical user interface at one point in time (i.e., without re-navigating and without re-displaying the graphical user interface), a user may not be able to simultaneously determine the following relationships: 1) upon which disk the file is located, 2) upon which volume within the disk the file is stored 3) an operating system type of that file and 3) what other operating systems types exist for other files stored on that same volume or on other volumes or on other disks and 4) what other volumes exist on that same disk or on other disks. As will be explained, the system of the invention provides a graphical user interface for use by an application (or an application that provides a graphical user interface of this invention) that conveys such relationships to a user in a concise format that does not require the user to navigate (e.g., via scrolling) to many different parts of a graphical user interface to determine these types of relationships. In other words, the invention equips an application with a graphical user interface that allows a user to overlay multiple relationships on top of one another so that the user can determine and view the relationships at the same time in the same view of the graphical user interface provided in accordance with this invention.
Another problem with conventional graphical user interfaces is that they do not support the representation of xe2x80x9crecursivexe2x80x9d hierarchies or multiple instances of the same icon in a single GUI. That is, known graphical user interfaces do not permit an icon that represents a single element (e.g., file or folder) to be represented in the prior art graphical user interface in more than one place at the same time. A prior art graphical user interface cannot display a file icon, for example, in multiple places within the graphical user interface. As used herein, a xe2x80x9crecursivexe2x80x9d hierarchy can be one, for example, in which both a parent folder and in one or more child folders below the parent folder contain an icon that represents the same object (or descriptor or data structure). As another example, a recursive hierarchy might display two branches of child-icons below a parent icon (e.g., a root icon) and each of the two child-icon branches might contain an icon that represents the same object. Such an example of a recursive hierarchy as provided in this invention might also be consider an ability to display arbitrary relationships that need not be hierarchical in nature. Conventional graphical user interfaces do not generally allow such representations of data and are largely limited to hierarchical displays. The invention however does support and provide such diverse representations which can be used to depict many-to-many relationships, for example.
Prior art graphical user interfaces provide mechanisms such as xe2x80x9cshortcutsxe2x80x9d that a user may place in various portions of a prior art graphical user interface. These operate simply as a pointer to the file and the user must pro-actively and manually place the shortcut copies into different locations. They are not, in the prior art, created in an automated manner in response to a user seeking to discern a relationship (via selecting a relationship function, as will be explained) between objects by manipulating the GUI. By way of example, a user cannot select a configuration by which to view a prior art graphical user interface that causes a shortcut to be automatically placed in multiple places within the graphical user interface.
Such limitations (e.g., not being able to show xe2x80x9crecursivexe2x80x9d hierarchies and no automatic creation of icons representing relationships) in the prior art graphical user interface systems helps to ensure consistency in data representation and access and prevents, for example, a user from endlessly navigating a recursive or repeating xe2x80x9cpathxe2x80x9d through a file system. However, these limitations of prior arts systems also significantly limit the relationships that a prior art graphical user interface can represent.
Another problem that is apparent in prior art graphical user interfaces is their inability to concisely represent long lists of icons. For example, if a user opens a folder icon which contains hundreds of files, a prior art graphical user interface will represent each file as a single icon. Such a long list of icons quickly fills a large portion, if not all, of the viewable area in a graphical user interface. Since the size of a computer display upon which an application displays a graphical user interface is limited (e.g., typical computer display sizes range from fifteen to twenty-one inches), a user can become quickly confused as to xe2x80x9cwherexe2x80x9d he or she is xe2x80x9cinxe2x80x9d a graphical user interface view of a file system. For example, if a user begins to scroll through a long list of hundreds of icons, a prior art graphical user interface is limited in its ability to convey to the user where that icon list xe2x80x9cexistsxe2x80x9d within the hierarchy of the file system once the user has scrolled any hierarchy indication information off of the viewable area of the graphical user interface. Thus, when a user first expands an icon to produce a long icon list, the user may have an indication as to where this list of icons resides in relation to the hierarchy of the file system. However, once the user begins to scroll the icon list looking for a particular icon of interest in the list, the graphical user interface quickly scrolls the folder icon that was opened or expanded to produce the icon list off the display. After a few moments, the user may be unable to determine where the icons that the user is viewing (i.e., the long list) exist within the hierarchy, and the user must rely on his or her memory to recall the hierarchical position of these icons (files or folders) in the file system. A window may provide a scroll bar that offers some indication of where the user may be in a list of icons, but the position of the scroll bar often depends upon what other items in the list have been expanded.
The present invention provides a unique graphical user interface that significantly overcomes many of the problems of prior art graphical user interfaces. While the invention is directed to the graphical user interface and the routines, procedures, functions and processes that provide such an interface, software applications that include a graphical user interface routines that operate in accordance with this invention to provide a graphical user interface as explained herein are also considered embodiments of this invention. In brief, the invention provides a graphical user interface that allows recursive hierarchies, and allows a user to select multiple relationships to be viewed on the graphical user interface at the same time. The relationships are user selectable and user definable so that the user can tailor the interface of this invention to his or her liking. This avoids having to abide with prior art graphical user interface limitations such as only representing hierarchical data and not being able to represent recursive data. By way of example, using this invention, a particular element in a graphical user interface can be present via the same icon in more than one position on the graphical user interface at the same time.
The system of the invention is typically provided in a computer system having a memory system and a display that displays a graphical user interface. Using such a computer system, the present invention provides a method for presenting relationships between objects to a user of the computer system. In one configuration, the method comprises the steps of displaying a plurality of icons on the graphical user interface and receiving a user selection of an icon from the plurality of icons. The user may selects icons, for example, via a pointing device such as a mouse, keyboard, joystick, voice commands or any other type of user input device. The method of this embodiment receives a relationship selection selected by the user that corresponds to the icon selected by the user and performs a relationship function identified by the relationship selection selected by the user. As will be explained further, the graphical user interface of this invention presents relationship selections to the user that can vary depending upon the state of the graphical user interface. The relationship function is performed upon a descriptor (one or more) in the memory system that is related, according to the relationship selection, to the icon selected by the user. The relationship function produces a display result that includes an arrangement icon that represents a newly displayed relationship to the icon selected by the user. The arrangement icon included in the display result thus provides a graphical view of a newly visible (i.e., on the graphical user interface) relationship that is related to one or more icons that are related to the icon originally selected by the user. The method also includes the step of displaying a representation of the display result in the graphical user interface on the display.
In some embodiments, user selectable relationships can be dynamically determined at runtime and the relationship function specified by the selected relationship can produce a display result that is rendered into a graphical user interface that allows such things as recursive hierarchies. The system also allows multiple relationships to be displayed in one section of the graphical user interface at one time, thus saving graphical user interface space and allowing a user to gain additional information from viewing the multiple relationships at one point in time.
In another configuration, the interface provided by this invention displays a hierarchical configuration of object icons and arrangement icons on the graphical user interface. Each object icon represents a respective object descriptor within the memory system and each arrangement icon represents a respective arrangement descriptor within the memory system and each arrangement descriptor also represents at least one relationship between certain of the object descriptors within the memory system. The arrangement descriptor can thus serve various purposes in the interface such as providing groupings to which objects presented within the interface can be members.
In one configuration, each object descriptor and each arrangement descriptor are maintained in a descriptor tree, and arrangement descriptors defined in a first level of the tree serve as group arrangement descriptors. To this end, the system of the invention maintains descriptors in memory that represent icons. Actual objects that the graphical user interface of the invention is to graphically convey to users are represented in memory via object descriptors which are then graphically rendered as object icons. For example, in the context of a software application that includes a graphical user interface of this invention that is used to manage a storage system, objects might include such things as storage systems, disks, volumes, files, and directors used to control volumes within a storage system. The system of the invention uses arrangement descriptors however to store relationship information concerning relationships between objects (represented in memory by their respective object descriptors). An example arrangement descriptor that might perhaps exist in the context of a storage management software application is an arrangement descriptor that represents a particular operating system type. Such an arrangement descriptor may be considered a group for its operating system type. Members of the group might be various object descriptors that represent volumes, for example, that contain (e.g., store) data or files generated by the operating system type associated with the group arrangement descriptor. Those object descriptors are said herein to be a xe2x80x9cmemberxe2x80x9d of that group.
Returning now to the summary of the method embodiments of this invention, in another configuration, the step of receiving a relationship selection selected by the user includes the steps of dynamically determining a set of relationships that are applicable to the icon selected by the user and displaying the set of relationships on the graphical user interface in a relationship selection menu. The method also includes the step of allowing the user to select the relationship selection from the set of relationships displayed on the graphical user interface. Since relationships can be dynamically determined, changing configurations of data can be reflected by changing relationships that are presented to the user for selection.
In yet another configuration, the step of dynamically determining a set of relationships that are applicable to the icon selected by the user includes the steps of determining an identity of a descriptor in the memory system that corresponds to the icon selected by the user. The method also includes the step of determining a list of selected icon child descriptors related to the descriptor in the memory system that corresponds to the icon selected by the user. This step essentially identifies the children of the selected icon (though they may not yet be displayed on the graphical user interface). Then, for each selected icon child descriptor in the list of selected icon child descriptors, the method determines a list of group arrangement descriptors in the memory system that include a relation to that selected icon child descriptor. Thus, if a selected icon references a group via a child pointer or reference, that group is added to the list of group arrangement descriptors. The method then creates a relationship selection in the set of relationships for each unique group arrangement descriptor existing in the list of group arrangement descriptors for each selected icon child descriptor. In this manner, the user is able to select relationships for an element based upon the groups to which that a particular element (represented via its icon) is a member.
In another configuration, the step of performing a relationship function includes the steps of determining a group arrangement descriptor in the memory system that corresponds to the relationship selection selected by the user. There may be one or more than one group arrangement descriptor that corresponds in this manner. The method also determines a list of group child descriptors related to the group arrangement descriptor in the memory system that corresponds to the relationship selection selected by the user. Thus, the children descriptors of a selected icon are determined. With this information, the method continues by creating a sub-list of child descriptors that depends hierarchically from the descriptor in the memory system that corresponds to the icon selected by the user. The sub-list of child descriptors includes a reference to each group child descriptor in the list of group child descriptors. The method also includes the step of producing a display result that includes icons corresponding to each child descriptor in the sub-list of child descriptors. In this manner, a user selects a relationship that corresponds to a group to which the user selected icon is a member. Then, a display result is produced that includes child descriptors (i.e., children icons) from the group corresponding to the user relationship selection that reference (i.e., a related to) children icons of the user selected icon. In this manner, a user can select an icon and can decide with which groups to organize this icon. Since multiple groups may each contain a reference to a single icon, the graphical user interface of this invention allows an icon to appear in multiple places.
In another configuration, the step of creating a sub-list of child descriptors includes the step of, for each selected icon child descriptor in the list of selected icon child descriptors, determining which group child descriptor in the list of group child descriptor contains a relation to that icon child descriptor and adding that group child descriptor to the sub-list of child descriptors.
In another configuration, the step of determining a list of group arrangement descriptors in the memory system that include a relation to that selected icon child descriptor determines a list of group arrangement descriptors in the memory system that include a relation to that selected icon child descriptor other than an arrangement descriptor corresponding to the icon selected by the user. This way, if a user initially selects an arrangement icon upon which to apply a relationship, the user will not be presented with a sub-list of icons that include a reference to the arrangement icon selected by the user.
As opposed to embodiments of the invention that provide dynamic determination of relationships, the system of the invention includes embodiments that can also present static relationships to a user. According to such a configuration, the step of receiving a relationship selection selected by the user includes the steps of determining an identity of a descriptor in the memory system that corresponds to the icon selected by the user and determining a set of relationships identified within the descriptor that corresponds to the icon selected by the user. The set of relationships may be hard-coded, for example, into the descriptor corresponding to the user selected icon. The method also displays the set of relationships on the graphical user interface and allows the user to select the relationship selection from the set of relationships displayed on the graphical user interface.
In another configuration, the step of determining a set of relationships identified within the descriptor that corresponds to the icon selected by the user includes the steps of identifying object properties of the descriptor in the memory system that corresponds to the icon selected by the user. Such properties may indicate many things about an object, for instance, under control of an application that provides the graphical user interface of this invention. The method also creates a relationship selection in the set of relationships for each unique object property identified in the descriptor in the memory system that corresponds to icon selected by the user.
According to another configuration, the step of performing a relationship function includes the steps of determining a list of selected icon child descriptors related to a descriptor in the memory system that corresponds to the icon selected by the user. This essentially determines the children of the selected icon. Then the method sorts the list of selected icon child descriptors based on at least one property of each selected icon child descriptor. The property corresponds to the relationship selection selected by the user. Based on the step of sorting, the method produces a sub-list of child descriptors that depend hierarchically from the descriptor in the memory system that corresponds to at least one icon selected by the user. The sub-list of child descriptors includes at least one arrangement descriptor corresponding to the property corresponding to the relationship selection selected by the user. The method also produces a display result that includes icons for each child descriptor in the sub-list of child descriptors. In this manner, properties of icons (descriptors which the icons represent) can be used as a basis for relationships that can be simultaneously viewed.
According to yet another configuration, the relationship selected by the user indicates that the user desires to sort by name a list of selected icon child descriptors that relate to a descriptor in the memory system that corresponds to the icon selected by the user. In this technique, the step of sorting condenses the list of selected icon child descriptors into the sub-list of child descriptors based on a name of each selected icon child descriptor and based on a total number of selected icon child descriptors. The sub-list of child descriptors has less descriptors than the list of selected icon child descriptors. Thus the resulting displayed list is shorter that the original displayed list. The sub-list of child descriptors includes at least one child descriptor that is an arrangement descriptor that represents more than one selected icon child descriptor and that may be expanded to produce a display result that shows each selected icon child descriptor which that arrangement descriptor represents. In this manner, the system of the invention provides a condensed version of a list of icons.
In another arrangement of the invention, the techniques outlined above can including the steps of receiving a user selection of an icon to expand within the plurality of icons displayed on the graphical user interface and determining an identity of a descriptor in the memory system that corresponds to the icon selected to expand. Next, the method determines a sub-list of selected icon child descriptors related to the descriptor in the memory system that corresponds to the icon selected by the user and produces a display result that includes icons for each selected icon child descriptor in the sub-list of selected icon child descriptors. This allows a user to expand an icon to see other relationships on the graphical user interface.
In another configuration, the relationship selection selected by the user specifies a grouping by which to arrange the icons related to the icon selected by the user and the relationship function produces a display result containing icons arranged according to the specified grouping.
In yet another configuration, the display result includes a sub-list of at least one icon, and the sub-list of the icon include an icon for each value of the specified grouping to which a child descriptor of a descriptor related to the icon selected by the user belongs.
In another configuration, the graphical user interface is provided by a storage system management application and certain icons displayed on the graphical user interface represent entities related to a storage system and certain other icons identify relationships between certain entities related to a storage system.
In yet another configuration, certain icons within the graphical user interface identify relationships between operating system types and locations of entities related to a storage system.
The invention also provide a configuration in which the relationship selection selected by the user indicates that the user desires to sort by name a list of selected icon child descriptors that relate to a descriptor in the memory system that corresponds to the icon selected by the user. In this instance, the step of performing the relationship function condenses the list of selected icon child descriptors into a sub-list of child descriptors based on a name of each selected icon child descriptor and based on a total number of selected icon child descriptors. The sub-list of child descriptors has less descriptors than the list of selected icon child descriptors. The relationship function in this case produces a display result that includes icons corresponding to descriptors in the sub-list of child descriptors. The sub-list includes at least one child descriptor that is an arrangement descriptor that represents more than one selected icon child descriptor and that may be expanded to produce a display result that shows each selected icon child descriptor which that arrangement descriptor represents. This allows more condensed viewing of the graphical user interface of this invention.
In another configuration, the relationship selection selected by the user specifies a condense relationship function to display a condensed view of a sub-list of icons that depend from the icon selected by the user and the step of performing a relationship function performs the steps of determining that a number of icons to be displayed below the icon selected by the user exceeds a predetermined number and condensing the number of icons to be displayed into a list of series arrangement icons and providing the condensed list of series arrangement icons in the display result.
In another configuration, the step of condensing includes the steps of computing the square root of a total number of icons to be displayed and providing, in the display result, a number of series arrangement icons equal in number to the square root of the total number of icons to be displayed. The configuration also determines if the square root multiplied by the square root is less than the total number of icons to be displayed, and if so, provides one extra series arrangement icon to be displayed in the display result.
According to another embodiment of the invention, a method for simultaneously displaying multiple relationships between entities managed by a software application is provided. The method comprises the steps of maintaining, in a memory system, a plurality of object descriptors each representing an entity managed by the software application and displaying, on a graphical user interface, at least two arrangement icons that include a relationship to a common object descriptor. This method also includes the step of displaying, on the graphical user interface, an object icon representing the common object descriptor, the object icon displayed in relation to the at least two arrangement icons that include the relationship to the common object descriptor in order to convey to a user of the graphical user interface that the at least two relationships represented by the arrangement icons relate to the object icon.
In another configuration, the step of displaying, on a graphical user interface, the at least two arrangement icons displays the at least two arrangement icons hierarchically under the object icon representing the common object descriptor. In this configuration, the method further includes the steps of receiving a relationship selection selected by the user that corresponds to one of the at least two arrangement icons and in response to the step of receiving a user selection of a relationship, expanding the one of the at least two arrangement icons to produce a sub-list of icons that are related to the common object icon based upon the relationship selected by the user.
In another configuration, the method includes the step of displaying, in a common hierarchy of the graphical user interface, an icon representing a descriptor twice, such that the common hierarchy is a recursive hierarchy.
According to another embodiment, in a computer system having a memory system and a display that displays a graphical user interface, a method is provided according to this invention for presenting relationships between icons to a user of the computer system. This method embodiment comprises the steps of displaying a plurality of icons in the graphical user interface on the display and receiving a user selection of an icon from the plurality of icons. Then, the system of the invention receives a relationship selection selected by the user that corresponds to the icon selected by the user. The system then performs a relationship function identified by the relationship selection selected by the user. The relationship function is performed by the system upon a descriptor in the memory system that corresponds to the icon selected by the user. The relationship function produces a display result that includes a modified appearance of an icon that is different than the icon selected by the user but that corresponds to the descriptor in the memory system that corresponds to the icon selected by the user. The system then displays a representation of the display result in the graphical user interface on the display.
In this manner, a user can select an icon and chose to manipulate this selected icon in some manner according to a selected relationship. The relationship function performed on this icon causes at least one other icon on the graphical user interface to be modified as per the relationship function as well. In this embodiment, the other icon that gets modified represents the same descriptor (e.g., the same object) as the icon selected by the user. Or in other words, an object displayed as an icon in multiple places (as allowed in this invention) that a user selects can be modified, and this modification is automatically conveyed in other places where this icon is displayed, without the user having to manually modify each instance of the icon.
According to another aspect of this embodiment, the relationship function identified by the relationship selection selected by the user corresponds to at least one of a move, add, copy, modify and delete relationship function that is performed on the icon selected by the user. The modified appearance produced in the display result indicates the result of the relationship function upon the icon that is different than the icon selected by the user but that corresponds to the descriptor in the memory system that corresponds to the icon selected by the user. Thus, if a user for instance deletes an icon from a sub-list of icons, the relationship created as a result of this action can be conveyed, for instance, by removing the same icon located elsewhere on the display (perhaps in a group to which that icon""s corresponding object is/was related, before being deleted). Thus, if a user moves, adds, copies, modifies or otherwise manipulates the relationships associated with an object via that objects icon, other instances of that objects icon on the display, if affected by such a relationship change, will be automatically updated by the system of the invention.
Other embodiments of the invention include a computer system comprising a display, a memory system, a processor, and a bus connecting the display, the processor and the memory system. In this configuration, the memory system is encoded with an application that when performed on the processor, causes the processor to provide a graphical user interface on the display of the computer system. The graphical user interface displays a plurality of icons on the graphical user interface to a user of the computer system, and receives, via a user input device coupled to the bus, a user selection of an icon from the plurality of icons and further receives, via the user input device, a relationship selection selected by the user that corresponds to the icon selected by the user. When the application is further performed on the processor, the application causes the processor to perform a relationship function identified by the relationship selection selected by the user. The relationship function operates upon a descriptor in the memory system that is related, according to the relationship selection, to the icon selected by the user. The relationship function produces a display result that conveys the relationship selection and that includes an arrangement icon that relates to the icon selected by the user and the processor displays a representation of the display result in the graphical user interface on the display.
Other embodiments include a computer system configured to perform all of the aforementioned methods via software control, or via hardware configured to perform those methods and the techniques disclosed herein as the invention.
Other arrangements of the invention that are disclosed herein include software programs to perform the operations summarized above and disclosed in detail below. More particularly, a computer program product is disclosed which has a computer-readable medium including computer program logic encoded thereon to provide the graphical user interface of this invention and its associated operations. The computer program logic, when executed on at least one processor with a computing system, causes the processor to perform the operations indicated herein. This arrangement of the invention is typically provided as software on a computer readable medium such as an optical, floppy or hard disk or other such medium such as firmware in one or more ROM or RAM chips. The software can be installed onto a computer system to cause the computer system to perform the techniques explained herein as the invention.
It is to be understood that the system of the invention can be embodied strictly as a software program, as software and hardware, or as hardware alone.
An example implementation of the invention that incorporates many of the aforementioned embodiments and those explained further below is the graphical user interface which is incorporated and provided as part of the EMC Enterprise Control Center (ECC), Java Edition, software. ECC is a software program that is manufactured by EMC Corporation of Hopkinton, Mass. Typically, a systems or network manager uses ECC, via a graphical user interface that is similar to the embodiments explained herein, to manage storage systems and other devices in a networked computing system environment.